@import url('https://fonts.googleapis.com/css?family=Montserrat&display=swap');

* {
    box-sizing: border-box;
}

body {
    background: #224941 url('./img/bg.jpg') no-repeat center center/cover;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    min-height: 100vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
}

.container {
    height: 300px;
    width: 300px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: auto;
    position: relative;
    transform: scale(1);
}

.circle {
    background-color: #010f1c;
    height: 100%;
    width: 100%;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.gradient-circle {
    height: 320px;
    width: 320px;
    background: conic-gradient(
        #55b7a4 0%,
        #4ca493 40%,
        #fff 40%,
        #fff 60%,
        #336d62 60%,
        #2a5b52 100%
    );
    border-radius: 50%;
    position: absolute;
    top: -10px;
    left: -10px;
    z-index: -2;
}

.pointer {
    height: 20px;
    width: 20px;
    background-color: #fff;
    border-radius: 50%;
    display: block;
}

.pointer-container {
    position: absolute;
    width: 20px;    
    height: 190px;
    top: -40px;
    left: 140px;
    animation: rotate 7.5s linear forwards infinite;
    transform-origin: bottom center;
}

@keyframes rotate {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

.container.grow {
    animation: grow 3s linear forwards;
}

@keyframes grow {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(1.2);
    }
}

.container.shrink {
    animation: shrink 3s linear forwards;
}

@keyframes shrink {
    from {
        transform: scale(1.2);
    }
    to {
        transform: scale(1);
    }
}